home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 3.iso / dist / fw_qt3.idb / usr / freeware / Qt / examples / opengl / glpixmap / glbox.h.z / glbox.h
C/C++ Source or Header  |  2002-04-08  |  1KB  |  60 lines

  1. /****************************************************************************
  2. ** $Id:  qt/glbox.h   3.0.3   edited Oct 12 12:18 $
  3. **
  4. ** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.
  5. **
  6. ** This file is part of an example program for Qt.  This example
  7. ** program may be used, distributed and modified without limitation.
  8. **
  9. *****************************************************************************/
  10.  
  11. /****************************************************************************
  12. **
  13. ** This is a simple QGLWidget displaying a box
  14. **
  15. ****************************************************************************/
  16.  
  17. #ifndef GLBOX_H
  18. #define GLBOX_H
  19.  
  20. #include <qgl.h>
  21.  
  22.  
  23. class GLBox : public QGLWidget
  24. {
  25.     Q_OBJECT
  26.  
  27. public:
  28.  
  29.     GLBox( QWidget* parent, const char* name, const QGLWidget* shareWidget=0 );
  30.     GLBox( const QGLFormat& format, QWidget* parent, const char* name, 
  31.        const QGLWidget* shareWidget=0 );
  32.     ~GLBox();
  33.  
  34.     void        copyRotation( const GLBox& fromBox );
  35.  
  36. public slots:
  37.  
  38.     void        setXRotation( int degrees );
  39.     void        setYRotation( int degrees );
  40.     void        setZRotation( int degrees );
  41.  
  42. protected:
  43.  
  44.     void        initializeGL();
  45.     void        paintGL();
  46.     void        resizeGL( int w, int h );
  47.  
  48.     virtual GLuint     makeObject();
  49.  
  50. private:
  51.  
  52.     GLuint object;
  53.  
  54.     GLfloat    xRot, yRot, zRot, scale;
  55.  
  56. };
  57.  
  58.  
  59. #endif // GLBOX_H
  60.